package com.common.util.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.data.annotation.Transient;

import java.io.Serializable;
import java.util.List;

/**
 * 功能信息
 */
@Data
public class FunInfo implements Serializable {

    /**
     * 功能唯一标识(uuid 生成)
     */
    @ApiModelProperty("功能id")
    private String id;
    /**
     * 功能路径
     */
    @ApiModelProperty("路径")
    private String targetUrl;

    @ApiModelProperty("ui组件")
    private String component;
    /**
     * 菜单名称
     */
    @ApiModelProperty("名称")
    private String name;
    /**
     * 排序
     **/
    @ApiModelProperty("排序")
    private Integer seq;
    /**
     * 图标
     **/
    @ApiModelProperty("图标")
    private String icon;
    /**
     * 子功能列表
     */
    @ApiModelProperty("子功能")
    private List<FunInfo> children;
    /**
     * 菜单权限标识
     **/
    @ApiModelProperty("权限标识")
    private String permission;
    /**
     * 功能类型
     */
    @ApiModelProperty("功能类型")
    private FunctionTypeEnum type;

    /**
     * 作数据比较使用
     */
    @Transient
    private Boolean status;
}
